function msg = rmAllDryRunTestFile()
%RMALLDRYRUNTTESTFILE 删除所有试运行测试文件
%   此函数扫描项目中所有模型，查找并删除对应的试运行测试文件（*_dryRun.mldatx）。
%   返回包含删除操作详情的累积消息。
%
%语法:
%   msg = rmAllDryRunTestFile()
%
%输入参数:
%   无
%
%输出参数:
%   msg - 包含删除操作详情的字符串消息
%         如果没有找到任何试运行文件，返回空字符串
%
%说明:
%   - 调用getModelList()获取项目中所有模型的列表
%   - 对每个模型，查找对应的试运行测试文件
%   - 试运行文件命名规则：[ModelName]_dryRun.mldatx
%   - 使用which()函数查找文件的完整路径
%   - 如果文件存在，则删除并记录操作信息
%   - 使用accumulate_msg()函数累积所有删除操作的消息
%
%文件命名约定:
%   试运行测试文件通常由Simulink Test自动生成，用于存储测试的试运行结果。
%   这些文件可能会占用较多磁盘空间，定期清理有助于维护项目整洁。
%
%使用场景:
%   - 项目清理和维护
%   - 释放磁盘空间
%   - 测试环境重置
%
%示例:
%   % 删除所有试运行测试文件
%   message = rmAllDryRunTestFile();
%   if ~isempty(message)
%       fprintf('删除操作完成:\n%s\n', message);
%   else
%       fprintf('没有找到试运行测试文件\n');
%   end
%
%依赖项:
%   getModelList - 获取模型列表
%   which - 查找文件路径
%   delete - 删除文件
%   accumulate_msg - 累积消息
%
%参见:
%   getModelList, accumulate_msg, which, delete
%

%版本: 1.0
%日期: 2024
%
%注意:
%   此操作不可撤销，请确认不再需要这些试运行文件后再执行。
%


modelList = getModelList;
msg = '';
for i = 1:numel(modelList)
    mdl = modelList{i};
    dryRunTestFile = which([mdl,'_dryRun.mldatx']);
    if ~isempty(dryRunTestFile)
        delete(dryRunTestFile)
        notice = (['Test file ',dryRunTestFile,' deleted.']);
        msg = accumulate_msg(msg,notice);
    end
end

end